package com.ytkj.digitalConstruction.enums.role;

/**
 * 角色基本类型枚举
 * @author Pete
 * @Date 2017年12月11日
 */
public enum RoleNameEnum {


		/*系统管理员*/
		ADMINISTRATOR(0, "系统管理员"),
		/**
		 * 指挥部
		 */
		HEADQUARTERS(2, "指挥部"),
		/**
		 * 施工单位
		 */
		CONSTRUCTION(3, "施工单位"),
		/**
		 * 监理单位
		 */
		SUPERVISOR(4, "监理单位"),
		/**
		 * 运行单位
		 */
		FUNCTION(5, "运行单位"),
		/**
		 * 安检单位
		 */
		SECURITY_CHECK(6, "安检单位"),
		/**
		 * 其他
		 */
		OTHER(7, "其他");

		private int value;
		private String desc;

		private RoleNameEnum(int value, String desc) {
			this.value = value;
			this.desc = desc;
		}

		public int getValue() {
			return value;
		}

		public String getDesc() {
			return desc;
		}

		public static int getDescByValue(String desc) {
			for (RoleNameEnum bc : values()) {
				if (bc.getDesc().equals(desc)) {
					return bc.value;
				}
			}
			return -1;
		}

		public static RoleNameEnum getByValue(int value) {
			for (RoleNameEnum bc : values()) {
				if (bc.getValue() == (value)) {
					return bc;
				}
			}
			return null;
		}

		@Override
		public String toString() {
			return String.format("value: %d, desc: %s", value, desc);
		}
}

